﻿using DLL.NET50.DB.MS.AdviceAndDrug;

using DLL.NET60.DB.MS.Entity.DTO;
using DLL.NetStandard.FlushRobot.MS.Entity.Param;

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
using System.Security.Cryptography;
using System.Text;
using System.Windows;

namespace DLL.FlushRobot.MS.Run
{
    //单个站点
    public class CSingleStation : ICloneable
    {
        public CMS_AdviceAndDrug adviceAndDrug = new CMS_AdviceAndDrug();//一个医嘱信息
        public DTO_adi_dic_drug UsedDrug = new DTO_adi_dic_drug();
        public int UsedFlag = 0;//该站是否启用
        public int ValidDrugCount = 0;//药品个数
        public int FeiZhengZhiMode = 0;
        public int HadDMFlag = 0;//已经冲刷配药过标志位
        public double remainFlushAire = 0;//剩余没有注入的空气
        public int flushAirOkFlag = 1; //负压空气注入完成标志位
        public double fzz_OutVolume = 0;//非整只抽出的容积
        public double InjectHadVolume = 0;//注射器内有的溶媒量
        public double InjectResidualVolume = 20;//注射器内剩余的空间体积

        public CSingleStation()
        {
            UsedDrug.InitializeFlushGroup();
            UsedDrug.InitializeFlushParam();
        }

        public object Clone()
        {
            CSingleStation sStation = new CSingleStation();
            sStation.UsedDrug = (DTO_adi_dic_drug)this.UsedDrug.Clone();
            sStation.adviceAndDrug = (CMS_AdviceAndDrug)this.adviceAndDrug.Clone();
            sStation.UsedFlag = this.UsedFlag;
            sStation.FeiZhengZhiMode = this.FeiZhengZhiMode;
            sStation.HadDMFlag = this.HadDMFlag;
            sStation.remainFlushAire = this.remainFlushAire;
            sStation.flushAirOkFlag = this.flushAirOkFlag;
            sStation.fzz_OutVolume = this.fzz_OutVolume;
            sStation.InjectHadVolume = this.InjectHadVolume;
            sStation.InjectResidualVolume = this.InjectResidualVolume;
            sStation.ValidDrugCount = this.ValidDrugCount;
            return sStation;
        }
    }
}